home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / src / X11 / xtartan-2.0 / misc.c < prev    next >
Encoding:
C/C++ Source or Header  |  1995-05-24  |  2.1 KB  |  98 lines

  1. /* misc.c - miscellaneous functions for xtartan
  2.  * by Jim McBeath (jimmc@hisoft.uucp)
  3.  *
  4.  *  7.Jan.88  jimmc  Initial definition (X10)
  5.  * 24.Oct.89  jimmc  Convert to X11, Xt; general restructuring
  6.  *  9.Jan.91  jimmc  v2.0: Split out tartan data stuff to tartan.c
  7.  */
  8.  
  9. #include <X11/Intrinsic.h>
  10. #include <X11/StringDefs.h>
  11. #include <stdio.h>
  12. #include <varargs.h>
  13.  
  14. extern char *Progname;
  15. extern Display *TDisplay;
  16.  
  17. Bell()
  18. {
  19.     XBell(TDisplay,0);
  20. }
  21.  
  22. /* VARARGS1 - like printf */
  23. Warn(va_alist)     /* print message */
  24. va_dcl
  25. {
  26.     va_list pvar;
  27.     char *fmt;
  28.  
  29.     va_start(pvar);
  30.     fmt = va_arg(pvar,char *);
  31.     (void)fprintf(stderr,"%s: ",Progname);
  32.     (void)vfprintf(stderr,fmt,pvar);
  33.     (void)fprintf(stderr,"\n");
  34.     va_end(pvar);
  35. }
  36.  
  37. /* VARARGS1 - like printf */
  38. Fatal(va_alist)     /* print message and exit */
  39. va_dcl
  40. {
  41.     va_list pvar;
  42.     char *fmt;
  43.  
  44.     va_start(pvar);
  45.     fmt = va_arg(pvar,char *);
  46.     (void)fprintf(stderr,"%s: ",Progname);
  47.     (void)vfprintf(stderr,fmt,pvar);
  48.     (void)fprintf(stderr,"\n");
  49.     va_end(pvar);
  50.     exit(1);
  51. }
  52.  
  53. char *
  54. GetSubResource(widget,sub,name)
  55. Widget widget;
  56. char *sub, *name;
  57. {
  58.     String string;
  59.     static XtResource resources[] = {
  60.         { "", "", XtRString, sizeof(String),
  61.             0, XtRString, NULL},
  62.     };
  63.     XtResource *tresource;
  64.  
  65.     tresource = (XtResource *)XtMalloc(sizeof(resources));
  66.     tresource[0] = resources[0];
  67.     tresource->resource_name = name;
  68.     tresource->resource_class = name;
  69.     XtGetSubresources(widget, &string, sub, sub,
  70.         tresource, (Cardinal)1, (ArgList)NULL, (Cardinal)0 );
  71.     XtFree((char *)tresource);
  72.     return string;
  73. }
  74.  
  75. String
  76. GetStringResource(widget, resourcename)
  77. Widget widget;
  78. char *resourcename;    /* what to look up in the file */
  79. {
  80.     String string;
  81.     static XtResource resources[] = {
  82.         { "", "", XtRString, sizeof(String),
  83.             0, XtRString, (caddr_t)NULL}
  84.     };    
  85.     XtResource *tresource;
  86.  
  87.     tresource = (XtResource *)XtMalloc(sizeof(resources));
  88.     tresource[0] = resources[0];
  89.     tresource->resource_name = resourcename;
  90.     tresource->resource_class = resourcename;
  91.     XtGetApplicationResources( widget, &string,
  92.         tresource, (Cardinal)1, (ArgList)NULL, (Cardinal)0 );
  93.     XtFree((char *)tresource);
  94.     return string;
  95. }
  96.  
  97. /* end */
  98.